package com.fingard.dsp.bank.directbank.bankInterface;

import com.fingard.dsp.bank.reqrespobj.unifiedorder.*;

/**
 * S3-公众号支付
 */
public interface IJSAPIOrder {
    /**
     * 公众号支付下单
     *
     * @param p_req
     * @return
     */
    RetAtsUnifiedOrder submitJSAPIOrder(ReqUnifiedOrder p_req);

    /**
     * 公众号支付状态查询
     *
     * @param p_req
     * @return
     */
    RetAtsQueryOrder queryJSAPIPay(ReqQueryOrder p_req);

    /**
     * 获取请求用户同意授权后的code的URL地址
     *
     * @param p_req
     * @return
     */
    RetAtsGenGetUserCodeURL GenGetUserCodeURL(ReqGenGetUserCodeURL p_req);

    /**
     * 获取实名验证授权页面地址
     *
     * @param p_req
     * @return
     */
    RetAtsGenRealNameURL genRealNameURL(ReqGenRealNameURL p_req);

    /**
     * 获取用户ID
     *
     * @param p_req
     * @return
     */
    RetAtsGenGetUserCodeURL getUserId(ReqGenGetUserCodeURL p_req);
}